Flexible hierarchy of grouping qualifications

ABSTRACT

A method for matching a first object of a first type with a second object of a second type includes reviving one or more qualifications blocks to be applied to the first object, determining a set of qualifications for each of the one or more qualifications blocks, applying each qualification of the sets of qualifications associated with each qualification block to the first object, and matching the first object to the second object based on the applied sets of qualifications.

BACKGROUND

1. Technical Field

The present disclosure relates to grouping qualifications and, morespecifically, flexible hierarchy of grouping qualifications.

2. Description of the Related Art

Human Capital Management (HCM) systems are computerized solutions usedby enterprises to effectively manage pools of human capital. HCMs arecommonly integrated into a broader suit of Enterprise Resource Planning(ERP) applications that integrate information from a diverse set ofapplications into a singular database. One prime example of an ERPsolution is “mySAP” or “SAP R/3” offered by SAP.

One function of HCM systems is to match human capital, such asemployees, with positions so as to make the best possible use ofavailable resources. ERP solutions have traditionally relied on rigidrules to keep key data well managed. As ERPs have evolved, methods havebeen devised to expand ERP flexibility and thereby enhance userfriendliness and customization without compromising effectiveness.However, there is a continuing need to add flexibility while preservingand/or enhancing ERP effectiveness.

SUMMARY

A method for matching a first object of a first type with a secondobject of a second type includes reviving one or more qualificationsblocks to be applied to the first object, determining a set ofqualifications for each of the one or more qualifications blocks,applying each qualification of the sets of qualifications associatedwith each qualification block to the first object, and matching thefirst object to the second object based on the applied sets ofqualifications.

A method for matching a person represented by a person object within adatabase to a position represented by a position object within thedatabase includes receiving one or more qualifications blocks to beapplied to the person object, looking up each of the one or morequalifications blocks in a qualifications blocks catalogue to determinea set of qualifications associated with each qualifications block,applying each qualification of the sets of qualifications associatedwith each qualification block to the person object, and matching theperson to the position by comparing the qualifications applied to theperson object with one or more qualifications applied to the positionobject.

A system for matching a first object of a first type with a secondobject of a second type includes a retrieving unit for reviving one ormore qualifications blocks to be applied to the first object, adetermining unit for determining a set of qualifications for each of theone or more qualifications blocks, an applying unit for applying eachqualification of the sets of qualifications associated with eachqualification block to the first object, and a matching unit formatching the first object to the second object based on the applied setsof qualifications.

A system for matching a person represented by a person object within adatabase to a position represented by a position object within thedatabase, includes a receiving unit for receiving one or morequalifications blocks to be applied to the person object, a looking-upunit for looking up each of the one or more qualifications blocks in aqualifications blocks catalogue to determine a set of qualificationsassociated with each qualifications block, an applying unit for applyingeach qualification of the sets of qualifications associated with eachqualification block to the person object, and a matching unit formatching the person to the position by comparing the qualificationsapplied to the person object with one or more qualifications applied tothe position object.

A computer system includes a processor and a program storage devicereadable by the computer system, embodying a program of instructionsexecutable by the processor to perform method steps for matching a firstobject of a first type with a second object of a second type. The methodincludes reviving one or more qualifications blocks to be applied to thefirst object, determining a set of qualifications for each of the one ormore qualifications blocks, applying each qualification of the sets ofqualifications associated with each qualification block to the firstobject, and matching the first object to the second object based on theapplied sets of qualifications.

A computer system includes a processor and a program storage devicereadable by the computer system, embodying a program of instructionsexecutable by the processor to perform method steps for matching aperson represented by a person object within a database to a positionrepresented by a position object within the database. The methodincludes receiving one or more qualifications blocks to be applied tothe person object, looking up each of the one or more qualificationsblocks in a qualifications blocks catalogue to determine a set ofqualifications associated with each qualifications block, applying eachqualification of the sets of qualifications associated with eachqualification block to the person object, and matching the person to theposition by comparing the qualifications applied to the person objectwith one or more qualifications applied to the position object.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the present disclosure and many of theattendant advantages thereof will be readily obtained as the samebecomes better understood by reference to the following detaileddescription when considered in connection with the accompanyingdrawings, wherein:

FIG. 1 shows a hierarchy diagram showing a database used to storeinformation pertinent to both the human capital at the qualificationside and the positions at the requirements side according to anembodiment of the present disclosure;

FIG. 2 shows the qualification block catalogue of FIG. 1 according to anembodiment of the present disclosure;

FIG. 3 is a flow chart showing a method for performing requirementanalysis according to an embodiment of the present disclosure; and

FIG. 4 shows an example of a computer system capable of implementing themethod and apparatus according to embodiments of the present disclosure.

DETAILED DESCRIPTION

In describing the preferred embodiments of the present disclosureillustrated in the drawings, specific terminology is employed for sakeof clarity. However, the present disclosure is not intended to belimited to the specific terminology so selected, and it is to beunderstood that each specific element includes all technical equivalentswhich operate in a similar manner.

One important feature of the HCM is to match positions with humancapital (people), such as employees. Human capital is describedaccording to various qualifications and positions are describedaccording to various requirements. Therefore, in matching human capitalto positions, qualifications are compared against requirements.

A database may be used to store information pertinent to both the humancapital at the qualification side and the positions at the requirementsside. FIG. 1 shows a hierarchy diagram showing a database used to storeinformation pertinent to both the human capital at the qualificationside and the positions at the requirements side according to anembodiment of the present disclosure. The database 10 may be populatedby one or more hierarchical objects. On the qualification side, eachperson, for example, an employee or other source of human capital, maybe represented by a person object 11. The person object 11 may have oneor more associated qualification objects 13. A qualification object 13may represent a specific productive feature, for example, skills, forthat person, for example, the ability to write computer programs. Eachqualification object 13 may include attributes 14 and/or associatedproficiencies 15. An attribute 14 may be a qualitative skill, such asfluency with C++. A proficiency 15 may be a quantitative assessmentassociated with a given attribute. For example, a number on the scale of1 to 10 or a simple yes/no scale. For example, a given person object“John Smith” may have an associated qualification object comprising theattribute object “fluency with C++” and a proficiency object of “7”. Aproficiency may be a customization of an otherwise predefined grouping.For example, two people may share a qualification but have a differentproficiency.

As discussed above, when populating the person object 11 withqualification objects 13, it may be convenient to use one or morequalification groups. Each qualification group may represent one or morequalification objects 13. Qualification groups may be used to facilitatedata entry, organization and accuracy in programming the person objects11. Qualification groups may be used to facilitate expression of sets ofqualifications that commonly accompany one another. For example, theremay be a “software design” qualification group that includes a set ofattributes that are commonly associated with one who is capable ofdesigning software.

Similarly, on the requirements side, each position may be represented bya position object 12. The position object 12 may have one or moreassociated requirement objects 16. Each requirement object 16 mayrepresent a particular set of productive features, for example, skills,that are believed to be important for effectively filling the position.Each requirement object 16 may include attributes 14 and/or associatedproficiencies 15.

A position object 12 may also have one or more associated task objects17. Each task object 17 may include one or more requirement objects 16that may together define a certain sort of responsibility that someonein the given position would have to fulfill. For example, a “softwaredesign manager” position object may include task objects such as“personnel management” and “software design.” Each task object may theninclude one or more attributes and/or proficiencies. For example, the“personnel management” task may include a “leadership” attribute with anassociated proficiency of 8 and an “organization” attribute with anassociated proficiency of 7.

A job object is a generic definition of a position. One or more jobs maybe used to more easily define a position object by potentially reducingthe number of qualifications and tasks need not be explicitly applied tothe position. To accomplish this, each job object may have one or morequalifications and/or tasks associated with it. When applied to aposition object, the position object inherits the objects associatedwith the job objects.

In matching people to positions, a process called requirements analyzingmay be executed. In requirements analyzing, the attributes andproficiencies of the various people are compared to the attributes andproficiencies of the various positions. For example, a “softwareengineer” position object with an associated requirement object with anassociated attribute object “fluency with C++” and an associatedproficiency object of “7” may be matched to a person object with anassociated attribute object “fluency with C++” and an associatedproficiency object of “7.”

Dynamic Qualifications Blocks

Embodiments of the present disclosure may utilize dynamic qualificationsblocks to facilitate the population person objects and/or to enhance theeffectiveness of the ERP. A dynamic qualification block is a basket ofqualification objects, for example, including attributes and/orassociated proficiencies.

Qualification groups, as described above, may be used to define aqualification catalogue. The qualification catalogue may be used todefine the composition of objects such as qualifications. Qualificationgroups may be used independent of objects, e.g., qualification groupsmay not be associated directly to an object.

Dynamic qualification blocks 18 differ from qualification groups in thatqualification blocks can be assigned directly to objects, for example,position objects, job objects and/or task objects. Qualification blocksdo not define qualifications as qualification groups do.

Qualification blocks may be assigned, for example on the requirementsside, to positions, tasks and jobs. While dynamic qualification blocksmay be assigned to an object, they need not be stored directly to thedatabase in association with the person object. Definitions for dynamicqualification blocks may be stored in a qualification block cataloguethat may be stored in the database. FIG. 2 shows the qualification blockcatalogue of FIG. 1 according to an embodiment of the presentdisclosure. When a dynamic qualification block 18 is associated with anobject, for example a person object, only the qualification objects thatare presently associated with the dynamic qualification block are storedto the database 20 in association with the person object. Therefore, ifdynamic qualification blocks 18 are modified or deleted, thequalifications associated with each person object remain accuratewithout additional maintenance procedures.

The qualification block catalogue 19 may contain definitions of aplurality of qualification blocks (QB), for example, QB₁₀, QB₂₀ andQB₃₀. The definitions may indicate, for example, which attributes andqualifications are associated with each qualification block. Forexample, QB₁₀ may be defined as containing attribute A₁₁, proficiencyP₁₁, attribute A₁₂ and proficiency P₁₂. QB₂₀ may be defined ascontaining attribute A₂₁, proficiency P₂₁, attribute A₂₂ and proficiencyP₂₂. The other qualification blocks, for example, QB₂₀ and QB₃₀, may besimilarly defined.

When a person object is displayed, the qualifications associated withthat person may be analyzed according to the then existing dynamicqualification blocks and where appropriate, dynamic qualification blocksmay be displayed in place of their constituent qualifications.

Embodiments of the present disclosure may also allow for partialqualification block fulfillment whereby when a person has some but notall qualifications necessary to make up a qualification block, thatqualification block may be displayed or otherwise used along with anindication that the qualification block is partial. For example, apercentage indicating the degree to which the qualification block hasbeen filled may be displayed.

Each qualification associated with the qualification blocks may have itsown independent proficiencies. It is not required that proficiencies beapplied to all qualifications associated with a qualifications block.

Requirements Analyzing

Requirements analyzing is the process of matching the requirements of aposition with the qualifications of a person. Requirments analyzingtraditionally utilizes a ridged approach where the hierarchy of theposition object is rigidly compared to the hierarchy of the personobject. As discussed above, the position object may have one or moreassociated tasks and each task may have one or more associatedqualifications. Each qualification may then have an associatedproficiency. Similarly, the person object may have one or moreassociated qualification groups or blocks, each with one or moreassociated qualifications. Each qualification may then have anassociated proficiency.

Because the hierarchy of the position and the hierarchy of the personare rigidly compared in this hierarchical evaluation path, positiontasks in their entirety are compared against person qualification blocksor groups in their entirety and unless the person has a group or blockthat exactly matches a task, a match is not made. Therefore, thetraditional system suffers from the disadvantage that a personpossessing all of the requisite qualifications to satisfy a particularposition may not match to that position because the person'squalifications may be arranged in groups or blocks that do not exactlycorrespond to the tasks of the position.

Moreover, in the traditional system, proficiency levels are ignored asonly the qualification groups or blocks are considered. Also, thetraditional system relies on the hierarchies of position objects beingcommonly arranged as position objects having associated task objectshaving associated qualification objects. If a task object of a positionobject had one or more associated task objects each with associatedqualification objects, then that position object could not beeffectively matched using the hierarchical evaluation path.

In embodiments of the present disclosure, a flexible and customizableevaluation path is used. FIG. 3 is a flow chart showing a method forperforming requirement analysis according to an embodiment of thepresent disclosure. Each position object is examined to determine a flatlist of all qualifications regardless of where they appear in thehierarchy (Step S31). The requirements may then be classified by theirrelative hierarchy level from the root object (Step S32). For example,if a qualification is directly associated with a position then it isgiven a classification of “1.” Whereas, if a qualification is within atask which is within a task which is within the position, then thequalification is given a classification of “3.” Under this approach, thelower the classification number, the closer the qualification is to theroot.

In analyzing the position object, certain qualifications may appear morethan once (Step S33). In these cases (Yes, Step S33), it may bedetermined whether the similar objects have different classificationnumbers (Step S34). If they do (Yes, Step S34) then the qualificationwith the lesser classification number remains and the others are notconsidered (Step S35) then the requirement analysis may continue usingthe flattened list of qualifications (Step S39). If there are noduplicate objects (No, Step S33) then the requirement analysis maycontinue using the flattened list of qualifications (Step S39).

However, if there are duplicate objects (Yes, Step S33) and the levelsare not different (No, Step S34) then it may be determined whether thereis a difference in the proficiency levels associated with the duplicateobjects (Step S36). If there are differences in the proficiency levelsassociated with the duplicate objects (Yes, Step S36) then the objectwith the highest proficiency is kept and the rest are discarded (StepS37) then the requirement analysis may continue using the flattened listof qualifications (Step S39). However, if there are no differences inthe proficiency levels (No, Step S36) then the objects are functionallyidentical and one may be kept and the others discarded (Step S38) thenthe requirement analysis may continue using the flattened list ofqualifications (Step S39).

When performing requirements analyzing, the qualifications of theposition may be compared directly to the qualifications of the person.Qualifications will not fail to match simply because the hierarchies maydiffer. The classification numbers and the proficiency values of thequalifications may then factor into determining the relative strength ofa match between person and position according to a predetermined weight.

Where no single person object contains qualifications matches for all ofthe qualifications associated with the position object, a most-capableperson object may be determined, for example, by comparing sub-groupingssuch as qualifications blocks and/or tasks.

Embodiments of the present disclosure also allow for greater freedom indefining the position object. For example, a position object may haveassociated tasks which may themselves have associated tasks. It may alsobe possible for a task to have an associated position.

FIG. 4 shows an example of a computer system which may implement themethod and system of the present disclosure. The system and method ofthe present disclosure may be implemented in the form of a softwareapplication running on a computer system, for example, a mainframe,personal computer (PC), handheld computer, server, etc. The softwareapplication may be stored on a recording media locally accessible by thecomputer system and accessible via a hard wired or wireless connectionto a network, for example, a local area network, or the Internet.

The computer system referred to generally as system 1000 may include,for example, a central processing unit (CPU) 1001, random access memory(RAM) 1004, a printer interface 1010, a display unit 1011, a local areanetwork (LAN) data transmission controller 1005, a LAN interface 1006, anetwork controller 1003, an internal bus 1002, and one or more inputdevices 1009, for example, a keyboard, mouse etc. As shown, the system1000 may be connected to a data storage device, for example, a harddisk, 1008 via a link 1007.

The above specific embodiments are illustrative, and many variations canbe introduced on these embodiments without departing from the spirit ofthe disclosure or from the scope of the appended claims. For example,elements and/or features of different illustrative embodiments may becombined with each other and/or substituted for each other within thescope of this disclosure and appended claims.

1. A method for matching a first object of a first type with a secondobject of a second type, comprising: reviving one or more qualificationsblocks to be applied to the first object; determining a set ofqualifications for each of the one or more qualifications blocks;applying each qualification of the sets of qualifications associatedwith each qualification block to the first object; and matching thefirst object to the second object based on the applied sets ofqualifications.
 2. The method of claim 1, wherein the first object ofthe first type is a person object representing a person and the secondobject of the second type is a position object representing a position.3. The method of claim 1, wherein the set of qualifications for each ofthe one or more qualifications blocks may be determined by referencing acatalogue of qualifications blocks.
 4. The method of claim 1, whereinthe step of matching the first object to the second object based on theapplied sets of qualifications comprises matching the qualificationsapplied to the first object with one or more requirements applied tosecond object.
 5. A method for matching a person represented by a personobject within a database to a position represented by a position objectwithin the database, comprising: receiving one or more qualificationsblocks to be applied to the person object; looking up each of the one ormore qualifications blocks in a qualifications blocks catalogue todetermine a set of qualifications associated with each qualificationsblock; applying each qualification of the sets of qualificationsassociated with each qualification block to the person object; andmatching the person to the position by comparing the qualificationsapplied to the person object with one or more qualifications applied tothe position object.
 6. A system for matching a first object of a firsttype with a second object of a second type, comprising: a retrievingunit for reviving one or more qualifications blocks to be applied to thefirst object; a determining unit for determining a set of qualificationsfor each of the one or more qualifications blocks; an applying unit forapplying each qualification of the sets of qualifications associatedwith each qualification block to the first object; and a matching unitfor matching the first object to the second object based on the appliedsets of qualifications.
 7. The system of claim 6, wherein the firstobject of the first type is a person object representing a person andthe second object of the second type is a position object representing aposition.
 8. The system of claim 6, wherein the set of qualificationsfor each of the one or more qualifications blocks may be determined byreferencing a catalogue of qualifications blocks.
 9. The system of claim6, wherein the matching unit matches the qualifications applied to thefirst object with one or more requirements applied to second object. 10.A system for matching a person represented by a person object within adatabase to a position represented by a position object within thedatabase, comprising: a receiving unit for receiving one or morequalifications blocks to be applied to the person object; a looking-upunit for looking up each of the one or more qualifications blocks in aqualifications blocks catalogue to determine a set of qualificationsassociated with each qualifications block; an applying unit for applyingeach qualification of the sets of qualifications associated with eachqualification block to the person object; and a matching unit formatching the person to the position by comparing the qualificationsapplied to the person object with one or more qualifications applied tothe position object.
 11. A computer system comprising: a processor; anda program storage device readable by the computer system, embodying aprogram of instructions executable by the processor to perform methodsteps for matching a first object of a first type with a second objectof a second type, the method comprising: reviving one or morequalifications blocks to be applied to the first object; determining aset of qualifications for each of the one or more qualifications blocks;applying each qualification of the sets of qualifications associatedwith each qualification block to the first object; and matching thefirst object to the second object based on the applied sets ofqualifications.
 12. The computer system of claim 11, wherein the firstobject of the first type is a person object representing a person andthe second object of the second type is a position object representing aposition.
 13. The computer system of claim 11, wherein the set ofqualifications for each of the one or more qualifications blocks may bedetermined by referencing a catalogue of qualifications blocks.
 14. Thecomputer system of claim 11, wherein the step of matching the firstobject to the second object based on the applied sets of qualificationscomprises matching the qualifications applied to the first object withone or more requirements applied to second object.
 15. A computer systemcomprising: a processor; and a program storage device readable by thecomputer system, embodying a program of instructions executable by theprocessor to perform method steps for matching a person represented by aperson object within a database to a position represented by a positionobject within the database, the method comprising: receiving one or morequalifications blocks to be applied to the person object; looking upeach of the one or more qualifications blocks in a qualifications blockscatalogue to determine a set of qualifications associated with eachqualifications block; applying each qualification of the sets ofqualifications associated with each qualification block to the personobject; and matching the person to the position by comparing thequalifications applied to the person object with one or morequalifications applied to the position object.